package com.yuzhi.master.sewageTreatment.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yuzhi.common.core.page.PageDataInfo;
import com.yuzhi.master.sewageTreatment.domain.request.SewageTreatmentReq;
import com.yuzhi.master.sewageTreatment.entity.SwageTreatmentEntity;
import com.yuzhi.master.sewageTreatment.entity.SwageTreatmentEntityReq;
import com.yuzhi.master.sewageTreatment.entity.SwageTreatmentEntityVo;

import java.util.List;
import java.util.Map;

public interface SewageTreatmentService extends IService<SwageTreatmentEntity> {

    /**
     * 分页查询污水处理厂信息
     * @param req 查询请求
     * @return 分页结果
     */
    PageDataInfo pageByCondition(SewageTreatmentReq req);

    /**
     * 更新污水处理厂信息
     * @param entity 待更新的实体对象
     * @return 是否更新成功
     */
    boolean updateById(SwageTreatmentEntity entity);

    /**
     * 查询所有污水处理厂基础信息
     * @param id 主键
     * @return 查询所有污水处理厂基础信息
     */
    SwageTreatmentEntity getById(String id);



    /**
     * 根据污水厂代码查询污水厂信息
     * @param factId
     * @return
     */
    List<SwageTreatmentEntity>  getSwageTreatmentByFactId(String factId);

    List<String> getImageUrlsByOssIds(List<String> ossIds);

    /**
     * 导出污水厂列表
     * @param request
     * @return
     */
    List<SwageTreatmentEntityVo> queryList(SwageTreatmentEntityReq request);

    /**
     * 保存污水厂点位信息
     * @param id
     * @param areaCoordinates
     * @return
     */
    int savePoint(String id, List<List<Double>> areaCoordinates);
}
